#pragma once

class Variable;

class CtrlCheckbox: public ICtrl, public ICtrlBasicGfx, public ICtrlTextSupport
{
public:
	CtrlCheckbox(ICtrl* parent, const std::string& name);
	~CtrlCheckbox();

	/*-ICtrl--------------------------------------------------------------------*/
	void Draw();
	void ReadSpecials(std::ifstream& file, const std::string& firstWord);
	void OnLMBClick(const glm::vec2& clickPosition);
	void OnRMBClick(const glm::vec2& clickPosition);

	/*-ICtrlBasicGfx------------------------------------------------------------*/

	/*-ICtrlTextSupport---------------------------------------------------------*/

	/*--------------------------------------------------------------------------*/

	void SetVar(Variable* var);
	Variable* GetVar() const;

private:
	Variable* m_var;
	std::string m_varName;
	Color m_tickColor;
};